Как добавить кастомное свойство существующей структуре Go? Приветствую!
Следующим кодом получаю TCP соединение:ln, err := net.Listen("tcp", Server.GetHost()+Server.getPortForNet())
for {
connection, err := ln.Accept()
}connection - интерфейс net.Conn.
Мне нужно добавить несколько пользовательских свойств и методов этой структуре.
Например:?{
name string
lastname string
}
func (Connection *?) GetName() string {
return ?.name
}
func (Connection *?) GetLastName() string {
return ?.lastname
}
Т.е. я должен буду иметь возможность писать нечто подобное:connection.getName()
Как это сделать правильно? Спасибо за помощь.

21 Авг 2019 в 06:27
172 +1
0
Ответы
1

Чтобы добавить пользовательские свойства и методы к существующей структуре net.Conn, вам нужно создать новый тип, встроить в него net.Conn и добавить нужные поля и методы. Например, вот как это можно сделать:

package main
import (
"net"
)
type CustomConn struct {
net.Conn
Name string
LastName string
}
func (c *CustomConn) GetName() string {
return c.Name
}
func (c *CustomConn) GetLastName() string {
return c.LastName
}
func main() {
ln, err := net.Listen("tcp", "localhost:8080")
if err != nil {
panic(err)
}
for {
connection, err := ln.Accept()
if err != nil {
panic(err)
}
customConn := &CustomConn{
Conn: connection,
Name: "John",
LastName: "Doe",
}
// Теперь у вас есть доступ к пользовательским методам и свойствам
name := customConn.GetName()
lastName := customConn.GetLastName()
// Использование connection в качестве net.Conn
}
}

В этом примере мы создаём новый тип CustomConn, который включает в себя net.Conn и добавляет свои поля Name и LastName, а также методы GetName() и GetLastName(). В основной функции мы создаём объект CustomConn на основе полученного net.Conn и можем использовать пользовательские методы и свойства этого объекта.

20 Апр в 13:18
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 83 948 авторам
Первые отклики появятся уже в течение 10 минут
Прямой эфир