Casting é a conversão entre tipos de valores. Em C++ a conversão de valores é um pouco mais complicada que em C porque existe a questão da herança de classes, por conta disso temos outros quatro tipo de cast em C++: dynamic_cast, static_cast, const_cast e reinterpret_cast.
(mais…)Categoria: Programação C/C++
Tanto a linguagem C, como a linguagem C++, contam com um conjunto de macros pré-definidas. Elas estão resolvidas em tempo de pré-processamento, portanto antes mesmo da compilação, e podem ser muito úteis. Vamos conhecê-las e estudar utilidades para o dia-a-dia.
(mais…)Smart Pointers foi um conceito adicionado no C++11 para reduzir os riscos inerentes ao desenvolvimento utilizando ponteiros, como por exemplo referência cíclica entre atributos. No post de hoje vamos aprender como os Weak Pointers podem resolver esse problema quando utilizando Shared Pointers.
(mais…)Smart Pointers foi um conceito adicionado no C++11 para reduzir os riscos inerentes ao desenvolvimento utilizando ponteiros, como por exemplo liberar um objeto que ainda precisa ser utilizado. No post de hoje vamos falar sobre Shared Pointers.
(mais…)Smart Pointers foi um conceito adicionado no C++11 para reduzir os riscos inerentes ao desenvolvimento utilizando ponteiros, como por exemplo vazamento de memória. No post de hoje vamos falar sobre Unique Pointers.
(mais…)Há algum tempo me deparei com uma dúvida no Stack Overflow, um usuário perguntando se havia como fazer uma função que retornedois valores em C/C++. Tem como, e tem mais de uma forma de fazer.
(mais…)Em C e C++ temos três streams padrão, um de entrada, stdin, e dois de saída, stdout e stderr, respectivamente saída e erro. Cada um pode ser redirecionado individualmente facilitando muito as coisas. Vamos aprender a redirecionar as saídas, e como utilizá-las da melhor forma.
(mais…)No post anterior abordamos como fazer uma função template, neste post vamos verificar como implementar uma classe template.
(mais…)Templates vieram para flexibilizar a tipagem forte da linguagem C++ sem a utilização de tipos neutros, como void, comum em C++. Neste post vamos aprender como implementar uma função com templates.
(mais…)Na primeira parte dos posts sobre linha de comando já abordamos o básico, agora vamos usar uma biblioteca padrão POSIX, getopt. E por que getopt? Porque está presente na maioria das variedades de Unix, um grande mercado de desenvolvimento de C/C++ atualmente.
(mais…)