Size: a a a

Библиотека C/C++ разработчика

2019 October 22
Библиотека C/C++ разработчика
Рассмотрим некоторые темы программирования на Си уровня advanced.    
http://pfacka.binaryparadise.com/articles/guide-to-advanced-programming-in-C.html
источник
Библиотека C/C++ разработчика
Читаете it-литературу, блоги на каком-то иностранном языке?
источник
2019 October 23
Библиотека C/C++ разработчика
Что не является принципом ООП?
Анонимный опрос
11%
Абстрагирование
3%
Инкапсуляция
83%
Многопоточность
2%
Наследование
2%
Полиморфизм
Проголосовало: 2215
источник
2019 October 24
Библиотека C/C++ разработчика
Найдите проблему в коде:
#include<stdio.h>
int main() {     int *p = (int *)malloc(sizeof(int));       p = NULL;       free(p); }
Анонимный опрос
30%
free() нельзя применить к NULL-pointer
52%
Утечка памяти
18%
Висячий указатель
Проголосовало: 1515
источник
Библиотека C/C++ разработчика
free() можно спокойно применить к NULL-pointer. В данном случае проблемой является утечка памяти.  Сначала надо вызвать функцию free() на поинтер, а потом присвоить ему значение NULL.  
Правильная последовательность:
free(p);
p = NULL;
источник
2019 October 25
Библиотека C/C++ разработчика
В каком сегменте памяти находятся i, j и *k?

int i;  int main() {       int j;      int *k = (int*)malloc(sizeof(int)); }
Анонимный опрос
8%
i, j, *k находятся в стеке.
24%
i, j – стек, *k – куча.
63%
i – BSS, j – стек, *k – куча.
5%
j – BSS,  i – стек, *k – куча.
Проголосовало: 1418
источник
Библиотека C/C++ разработчика
Programmer С++ в Playrix

➕ Удалённо
➕ Опыт разработки на С++ от 3 лет

https://prglb.ru/56nl8
источник
2019 October 26
Библиотека C/C++ разработчика
​​Разбираемся в ООП-дизайне, чтобы управлять сложностью проектов:
https://web.archive.org/web/20120102190219/http://www.accu.informika.ru/acornsig/public/articles/ood_intro.html
источник
2019 October 27
Библиотека C/C++ разработчика
Если вы хотите создать свой проект, то можете черпать вдохновение из данного источника.
Сайт содержит  множество проектов на C/C++ (без ошибок и очепяток)
https://www.codewithc.com/c-projects-with-source-code/
источник
2019 October 28
Библиотека C/C++ разработчика
Что выведет программа?
#include <stdio.h>
#include <stdlib.h>  int main(int argc, char *argv[])  {      char temp[20];     gcvt(23.45, 3, temp);     printf("%s", temp);     return 0; }
Анонимный опрос
9%
0
19%
23.5
23%
23.45000
49%
23.4
Проголосовало: 905
источник
Библиотека C/C++ разработчика
Правильный ответ: 23.4
Функция gcvt() превращает число с плавающей точкой в строку. Тройка в аргументе означает, что нужно конвертировать первые три цифры.
источник
2019 October 29
Библиотека C/C++ разработчика
Так как в С++ нет ключевого слова **interface**, как можно реализовать интерфейсы?
Анонимный опрос
4%
Их нельзя реализовать
5%
Можно реализовать с помощью  volatile и explicit
3%
Нужно использовать префикс “I” в названии метода
76%
Можно реализовать с помощью виртуальных функций
10%
В новой версии С++ есть интерфейсы
2%
Импортировать из Java
Проголосовало: 1393
источник
2019 October 30
Библиотека C/C++ разработчика
Правильный ответ не включен в список вариантов.
Интерфейсы можно реализовать с помощью чисто виртуальных функций.
Они специфицирутся тем, что  в декларации  такой функции присутствует модификатор virtual и  "= 0”.
#пример:
class Box {
  public:
     // pure virtual function
     virtual double getVolume() = 0;
     
  private:
     double length;      // Length of a box
     double breadth;     // Breadth of a box
     double height;      // Height of a box
};
источник
Библиотека C/C++ разработчика
Как найти и отпринтить узлы, у которых нет братьев и сестёр?Помимо имплементации на С++, статья содержит псевдокод, поэтому вы сами можете потренироваться и реализовать поиск.
https://teletype.in/@heisenbug/HkxENxDqr
источник
2019 October 31
Библиотека C/C++ разработчика
Что выведет программа?

#include <iostream>  int main(int argc, const char * argv[]) {     int a[] = {1, 2, 3, 4, 5, 6};     std::cout << (1 + 3)[a] - a[0] + (a + 1)[2]; }
Анонимный опрос
4%
2
6%
4
9%
6
74%
8
7%
10
Проголосовало: 824
источник
Библиотека C/C++ разработчика
Правильный ответ: 8
(1+3)[a] – это то же, что и a[1+3]==5
a[0]==1
(a+1)[2] можно записать в виде a[3]==4
В итоге:

5-1+4=8
источник
2019 November 01
Библиотека C/C++ разработчика
Что хранит в себе vtable?
Анонимный опрос
11%
Таблицу данных.
83%
Адреса виртуальных функций.
7%
Данные виртуального окружения.
Проголосовало: 1269
источник
Библиотека C/C++ разработчика
Что хранит в себе vtable?
Адреса виртуальных функций.

Всякий раз, когда в программе объявляется виртуальная функция, создается координирующая таблица vtable. Она хранит адреса виртуальных функций.
источник
2019 November 02
Библиотека C/C++ разработчика
Какими бывают виды специализации шаблона?
Анонимный опрос
72%
Полная и частичная.
16%
Строго и частично фиксированная.
13%
Мультипоточная и итерационная.
Проголосовало: 958
источник
Библиотека C/C++ разработчика
Какими бывают виды специализации шаблона?

Полная и частичная специализация — верный ответ.
источник