Альтернатива (*this)[bar]
должна использовать именованную функцию членства, которая делает работу operator[]
. Перегруженные операторы делают вещи легче на Ваших пользователях. Что еще более важно, они - часть интерфейса Вашего класса . Спросите себя, если действительно имеет смысл реализовывать Ваш класс с точки зрения своего собственного открытого интерфейса. В противном случае я предлагаю писать отдельное (защищенный или частный) функция членства, чтобы сделать работу и затем иметь operator[]
и любой другой вызов функции это.
это специфично для MySQL, но SHOW CREATE TABLE
дает DDL для таблицы.
Вы должны создать это сами.
Вы можете запросить INFORMATION_SCHEMA.COLUMNS
для имени столбца и типа данных.
Вы не можете получить текст CREATE Table
кроссплатформенным способом, но вы может получить достаточно информации, чтобы построить его самостоятельно, из представлений INFORMATION_SCHEMA
.